package com.xrit.sunnyday.dao;

import com.xrit.sunnyday.pojo.Role;
import com.xrit.sunnyday.pojo.User;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface UserDao {

    /*
     * 分页查询
     * */
    List<User> findAll(String queryString);

    /*
     * 查询所有角色
     * */
    List<Role> findAllRole();

    /*
     * 添加用户
     * */
    void add(User user);

    /*
     * 添加用户与角色的关系
     * */
    void addUserRole(@Param("userId") Integer UserId, @Param("roleId") Integer RoleId);

    /*
     * 查询用户与角色是否存在关系
     * */
    int findUserRole(Integer userId);

    /*
     * 删除用户
     * */
    void deleteById(int id);

    /*
     * 通过用户id查询信息
     * */
    User findById(int id);

    /*
     *通过用户id查询选中的角色id
     * */
    List<Integer> findRoelIdsByUserId(Integer userId);

    /*
     * 修改用户
     * */
    void update(User user);

    /*
     * 解除关系
     * */
    void deleteUserRole(int userId);


    /**
     * 根据用户名查找用户信息
     */
    User findByUsername(String username);
}
